//需求:你要封装一个方法，我给你一个要读取读取文件的路径，你用这个方法能够帮我读取文件，并把内容返回给我

const fs = require('fs')
const path = require('path')

function getFileByPath(fpath, successCb, errCb) {
	fs.readFile(fpath, 'utf-8', (err, dataStr) => {
		if (err) return errCb(err)
		successCb(dataStr)
	})
}
/* getFileByPath(path.join(__dirname, './files/1.txt'),function(dataStr){
	console.log(dataStr + '成功读取了')
},function(err){
	console.log('读取失败'+err.message)
}) */


//需求：先读取文件1，在读取文件2，最后文件3
//回调地狱
// 使用ES6中的Promise 来解决回调地狱的问题；

getFileByPath(path.join(__dirname,'./files/1.txt'),function(dataStr){
	console.log(dataStr)
	
	getFileByPath(path.join(__dirname,'./files/2.txt'),function(dataStr){
		console.log(dataStr)
		
		getFileByPath(path.join(__dirname,'./files/3.txt'),function(dataStr){
			console.log(dataStr)	
		})
	})
})